// 当前这个模块: API 接口 进行统一管理
import requests from './request';
import mockRequests from './mockAjax';
// 三级联动接口
// /api/product/getBaseCategoryList get 请求 无参数
// 发请求: axios 发请求返回结果 Promise 对象

export const reqCategoryList = () =>
	requests({ url: '/product/getBaseCategoryList', method: 'get' });

// 获取bannner(Home首页轮播图接口)
export const reqGetBannerList = () => mockRequests.get('/banner');

// 获取 floor 数据
export const reqFloorList = () => mockRequests.get('/floor');

// 获取 搜索模块 数据 地址: /api/list 请求的方式 POST
// 参数: 需要带参数
/* 例子
{
	"category3Id": "61",
	"categoryName": "手机",
	"keyword": "小米",
	"order": "1:desc",
	"pageNo": 1,
	"pageSize": 10,
	"props": ["1:1700-2799:价格", "2:6.65-6.74英寸:屏幕尺寸"],
	"trademark": "4:小米"
}
*/
// 当前这个函数需要接收外部传递参数
// 当前这个接口(获取搜索模块的数据), 给服务器传递一个默认的参数, 至少是一个空对象
export const reqGetSearchInfo = (params) =>
	requests({ url: '/list', method: 'post', data: params });

// 获取产品详情信息的接口 URL: /api/item/{ skuId } 请求方式 : getBaseCategoryList
export const reqGoodsInfo = (skuId) => requests({ url: `/item/${skuId}`, method: 'get' });

// 将产品添加到购物车中(获取更新某一个产品的个数)
// /cart/addToCart/{ skuId }/{ skuNum }   POST
export const reqAddOrUpdateShopCart = (skuId, skuNum) =>
	requests({ url: `/cart/addToCart/${skuId}/${skuNum}`, method: 'POST' });

// 获取购物车列表数据接口
// /api/cart/cartList   get
export const reqCartList = () => requests({ url: '/cart/cartList', method: 'get' });

// 删除购物车产品的接口
// URL:/api/cart/deleteCart/{skuId}   DELETE
export const reqDeleteCartById = (skuId) =>
	requests({ url: `/cart/deleteCart/${skuId}`, method: 'DELETE' });

// 修改商品的选中状态
// /api/cart/checkCart/{skuId}/{isChecked}  get
export const reqUpdateCart = (skuId, isChecked) =>
	requests({ url: `/cart/checkCart/${skuId}/${isChecked}`, method: 'get' });

// 获取验证码
// URL:/api/user/passport/sendCode/{phone} method:get
export const reqGetCode = (phone) =>
	requests({ url: `/user/passport/sendCode/${phone}`, method: 'get' });

// 注册接口
// url:/api/user/passport/register   method:POST  phone code password
export const reqUserRegister = (data) =>
	requests({ url: '/user/passport/register', data, method: 'post' });

// 登录
// URL:/api/user/passport/login   POST   phone password
export const reqUserLogin = (data) =>
	requests({ url: '/user/passport/login', data, method: 'post' });

// 获取用户信息[需要带着用户的token向服务器要用户信息]
// url:/api/user/passport/auth/getUserInfo   method:get
export const reqUserInfo = () =>
	requests({ url: '/user/passport/auth/getUserInfo', method: 'get' });

// 退出登录
// url:/api/user/passport/logout   get
export const reqLogout = () => requests({ url: '/user/passport/logout', method: 'get' });

// 获取用户地址信息
// url:/api/user/userAddress/auth/findUserAddressList   get
export const reqAddressInfo = () =>
	requests({ url: '/user/userAddress/auth/findUserAddressList', method: 'get' });

// 获取商品清单
// url:/api/order/auth/trade   method:get
export const reqOrderInfo = () => requests({ url: '/order/auth/trade', method: 'get' });

// 提交订单的接口
// url:/api/order/auth/submitOrder?tradeNo={tradeNo}   method:post
export const reqSubmitOrder = (tradeNo, data) =>
	requests({ url: `/order/auth/submitOrder?tradeNo=${tradeNo}`, data, method: 'post' });

// 获取支付信息
// url:/api/payment/weixin/createNative/{orderId}   method:GET
export const reqPayInfo = (orderId) =>
	requests({ url: `/payment/weixin/createNative/${orderId}`, method: 'get' });

// 获取支付订单状态
// url: /api/payment/weixin/queryPayStatus/{orderId} method: get
export const reqPayStatus = (orderId) =>
	requests({ url: `/payment/weixin/queryPayStatus/${orderId}`, method: 'get' });

// 获取个人中心的数据
// url:	/api/order/auth/{page}/{limit}   method: get
export const reqMyOrderList = (page, limit) =>
	requests({ url: `/order/auth/${page}/${limit}`, method: 'get' });
